How To Think And Problem Solve In Coding